package risk.control.project.utils;

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class DateUtils {

    /**
     * 获取当前时间7天前的日期和时间
     *
     * @return 格式为"yyyy-MM-dd HH:mm:ss"的字符串
     */
    public static String get7DaysAgo() {
        // 获取当前日历实例
        Calendar calendar = Calendar.getInstance();

        // 将时间设置为当天的00:00:00
        calendar.set(Calendar.HOUR_OF_DAY, 0);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);
        calendar.set(Calendar.MILLISECOND, 0);

        // 将日历时间设置为7天前
        calendar.add(Calendar.DAY_OF_YEAR, -7);

        // 定义日期格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        // 格式化日期并返回
        return sdf.format(calendar.getTime());
    }

    /**
     * 获取当前日期的最后一秒（23:59:59）
     *
     * @return 格式为 "yyyy-MM-dd 23:59:59" 的字符串
     */
    public static String getEndOfToday() {
        Calendar calendar = Calendar.getInstance();

        // 设置时间为当天的 23:59:59
        calendar.set(Calendar.HOUR_OF_DAY, 23);
        calendar.set(Calendar.MINUTE, 59);
        calendar.set(Calendar.SECOND, 59);
        calendar.set(Calendar.MILLISECOND, 999); // 可选，精确到毫秒

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        return sdf.format(calendar.getTime());
    }

}
